namespace SharpTalk.Core.Interfaces
{
    using Enums;
    using System.Collections.Generic;
    using System;

    public interface IChatRoomManager : IManager<ChatRoom>
    {
        ChatRoom Create(string name, ChatRoomTypeEnum type, byte[] passwordhash,string motd, Guid owner);
        ChatRoom Find(string name);
        ChatRoom Find(string name, ChatRoomTypeEnum type);
        List<ChatRoom> Find(ChatRoomTypeEnum type);
        ChatRoomDetails Join(Guid chatroomGuid, Guid user, byte[] password);
        bool Leave(Guid chatroomGuid, Guid user);
        ChatRoom Update(ChatRoom chatRoom, bool definePassword);
    }
}